1. Field of the Invention
The present invention relates generally to a data processing system and more specifically, to a computer implemented method, an apparatus and a computer program product for resource data management.
2. Description of the Related Art
On several models of computing systems, resources known as field replaceable units (FRU) are present. Field replaceable units may contain components including backplanes, service processors, one or more processors, memory, and input/output devices. Field replaceable units are typically circuit boards, parts or assemblies that may be quickly and easily removed and swapped with replacements. Other examples of field replaceable units range from keyboards and mice to memory modules, processors and mother boards. Each field replaceable unit may have field replaceable unit vital product data (VPD) defining the resource.
Vital product data is a set of resource attributes. Vital product data is descriptive information describing a resource, in the form of a resource identifier, and attributes specific to the type of resource. The descriptive information for a resource may include how other resources plug into the specific resource, and identifies the type of field replaceable unit, the part number, the serial number, as well as descriptive information for product release level and maintenance level. Other resource specific vital product data may include wiring and access information defining how to get to a next attached device. User specific information may also be available such as location of the resource within the system. Vital product data then may be viewed as having two types of data. A first type of data is that which relates to a replaceable unit and may be contained on a secure device. The second type of data is characterization data specific to a resource and may be contained on a unsecure device such as a serial electrically erasable programmable read-only memory (SEEPROM).
In addition, some field replaceable units comprise multiple embedded resources which must be handled on a single resource basis by firmware running on a service processor. For example, a backplane field replaceable unit may have multiple processor modules soldered onto the backplane. Each processor module has one or more processor cores. Each processor module further contains module vital product data which has characterization data unique to the processor module. The vital product data component in the service processor code assigns a unique resource identifier (RID) to each of the processor modules. The vital product data component provides access to the field replaceable unit vital product data for each processor resource identifier and access to the characterization data from the module vital product data for each processor resource identifier.
In one example, a processor field replaceable unit is a processor backplane with multiple processor modules soldered onto the backplane. The processor modules are not readily removed from the backplane. In this example there is a secure device accessible by the vital product data component in the service processor which contains the field replaceable unit vital product data for the field replaceable unit. The secure device is required to contain the field replaceable unit vital product data which identifies the operational characteristics such as the number of processor cores to be used on each processor module and the speed at which the processors are to be run. Each processor module contains a serial electrically erasable programmable read-only memory which contains processor characterization data that is unique to a processor module. The module information is referred to as module vital product data. The vital product data component in the service processor provides access to this module vital product data.
Because the characterization data is customized to a specific processor module, the system firmware requires a unique resource identifier for each processor module. For example, a system model may have a single instance of processor field replaceable unit vital product data and multiple processor resource identifiers associated with the processor field replaceable unit. A problem occurs because each processor module used needs to be reported to the system kernel code with a correct field replaceable unit vital product data correspondence.
In another example system, the structure may become more complicated. In this example, the processor modules are pluggable field replaceable units. There is a backplane field replaceable unit with a serial electrically erasable programmable read-only memory device containing the backplane vital product data and the processor module field replaceable units. The processor modules contain serial electrically erasable programmable read-only memory with the processor characterization data, but the processor modules do not contain any field replaceable unit vital product data. In this example, all processor modules use the same number of processor cores and run at the same speed. A single secure device is plugged into the processor backplane to contain the field replaceable unit vital product data that is common to all processor field replaceable units. While the field replaceable unit information is common, the module information is not. The module vital product data contains a part number and a serial number which uniquely identifies the processor field replaceable unit, which is the processor module in this case. However, the module vital product data does not have a separate secure place to hold the data for the number of processor cores to run or the processor core speed. Therefore, on this example computer system, each processor module represents a unique field replaceable unit and a resource identifier. The problem is how to pass the correct processor field replaceable unit vital product data on to the system kernel for each processor core to be used.
When the vital product data for different field replaceable units is not unique, that is not having a unique serial number within a group of field replaceable units with a common part number, other components such as the system kernel will not be aware of the correct number of field replaceable units in the set of processors. On systems where each processor module is a separate field replaceable unit, each processor field replaceable unit reports unique vital product data. Failure to report the correct field replaceable unit vital product data for each processor resource identifier will impact the ability to initialize a system, the performance and capacity to upgrade on demand capability of the system, and the serviceability of the system.